--[[
转换 一个sourceNode的位置 成 另一个aimNode上的坐标
常常的用法是：
local sourceNode =cc.Node:create()
local aimNode =cc.Node:create()
这时我想得到sourceNode 如果在 aimNode 中的位置坐标是多少，就要用到这个方法
isAnchor_sourceNode 是否的相对于 锚点
isAnchor_toNode 是否的相对于 锚点
ccp 如果存在 的话 ccp 而不是sourceNode的位置坐标
--]]
function ConvertPos_SourceNode_to_AimNode(sourceNode,isAnchor_sourceNode,aimNode,isAnchor_aimNode,ccp)
    local cc_p_of_OfSourceNode = cc.p(sourceNode:getPositionX(),sourceNode:getPositionY() ) 
    local WorldPos = nil
    local parentOfSourceNode = sourceNode:getParent()  --应该根据父节点转换
    parentOfSourceNode = parentOfSourceNode or sourceNode
    cc_p_of_OfSourceNode = ccp or cc_p_of_OfSourceNode  --ccp 如果存在 的话 会去转换ccp 而不是sourceNode的位置坐标
    if isAnchor_sourceNode then
        WorldPos=parentOfSourceNode:convertToWorldSpaceAR(cc_p_of_OfSourceNode)
    else
        WorldPos=parentOfSourceNode:convertToWorldSpace(cc_p_of_OfSourceNode)
    end

    local nodePos = nil
    if isAnchor_aimNode then
        nodePos=aimNode:convertToWorldSpaceAR(WorldPos)
    else
        nodePos=aimNode:convertToWorldSpace(WorldPos)
    end
    return nodePos
end


--[[
@parent 提供的要查找的节点
@name   名字
]]
function GetChildByName(parent,name)  --针对cocostudio 的ui  .csb文件创建的 节点
    local aimnode = parent:getChildByName(name)
    if aimnode then
        return aimnode  --如果找到了就返回
    end --没有找到就 继续在子节点里面找

    local children = parent:getChildren()

    for __, child in pairs(children) do
        aimnode = GetChildByName(child,name) --递归查找  
        if aimnode then
            return aimnode 
        end
    end
    return aimnode or nil  --  找了一个遍 还是没有找到 返回空吧
end


